Pragmatic trellis coded modulation (PTCM) has become popular because it allows a common basic encoder and decoder to achieve respectable coding gains for a wide range of bandwidth efficiencies (e.g. 1-6 b/s/Hz) and a wide range of coding applications, such as 8-PSK, 16-PSK, 16-QAM, 32-QAM, etc.
In general, PTCM employs primary and secondary modulation schemes. The words "primary" and "secondary" do not indicate relative importance. Rather, the secondary modulation is simply applied to a first subset of information bits, and the primary modulation is applied to the remaining information bits. Conventionally, the secondary modulation scheme differentially encodes its subset of information bits, then encodes these differentially encoded bits with a strong error detection and correction code, such as the well known K=7, rate 1/2 "Viterbi" convolutional code (i.e. Viterbi encoding). The primary modulation scheme need do no more than differentially encode its subset of the information bits. The resulting symbols from the primary and secondary modulation schemes are then concurrently phase mapped to generate quadrature components of a transmit signal. The symbol data are conveyed, at least in part, through the amplitude and phase relationships between the quadrature components of the transmit signal.
Carrier-coherent receiving schemes are often used with PTCM because they demonstrate improved performance over differentially coherent receiving schemes. Coherent receivers become phase synchronized to the received signal carrier in order to extract the amplitude and phase relationships indicated by the quadrature components. However, an ambiguity results because the receiver inherently has no knowledge of an absolute phase reference, such as zero. In other words, where one of 2.sup.k possible phase states are conveyed during each unit interval, where K.sup.k equals the number of symbols conveyed per unit interval, then the receiver may identify any of the 2.sup.k phase states as the zero phase state. This ambiguity must be resolved before the conveyed amplitude and phase data successfully reveal the information bits. Conventionally, the differential encoding, when used in connection with transparent convolutional codes applied to the secondary modulation, allows decoding circuits to resolve the phase ambiguity with respect to the secondary modulation. When the secondary modulation is decoded, these decoded bits are then used to re-generate the secondary modulation for use in decoding the primary modulation. The ambiguity must be resolved to correctly re-generate the secondary modulation so that the primary modulation can then be decoded.
Unfortunately, such schemes have conventionally been rotationally variant, particularly for higher orders of modulation. In other words, the decoders cannot remain locked regardless of which phase reference point is originally selected. As a result, when the decoder locks at some phase states, the differential decoding on the secondary modulation allows the decoder to quickly begin decoding data. However, when the decoder locks at other phase states, an extensive and time consuming normalization rate detection process is performed to regain lock.
The difficulty in achieving rotational invariance is believed to be caused, at least in part, by choosing a scheme for mapping symbols generated by convolutional encoders to phase points which excessively commingles primary and secondary modulation symbols in the resulting phase constellation. It may result in part from using a Gray code for mapping symbols generated by convolutional encoders to phase points and in part from attempting to convey more than one convolutionally encoded symbol from a given secondary information bit stream per unit interval.
In addition, the use of differential encoding upon the convolutionally encoded secondary information bit stream is undesirable because when a single error occurs, two highly correlated errors are observed in the decoder. Consequently, a significant degradation of error probabilities results.
Another technique known in connection with digital communication schemes, including PTCM, is puncturing. When signal-to-noise ratios in a communication channel permit, the convolutional coding may be punctured to improve the effective coding rate at the cost of reduced coding gain. Conventional systems which use punctured coding attempt to achieve a coding rate as close to one as is possible to maximize the data transfer rate and justify the complexity of including a puncturing and depuncturing system. While puncturing is desirable in many applications, the significant reduction in coding gain which results from the conventional practice of achieving a coding rate as close to one as possible is highly undesirable for the convolutional encoding applied to the secondary information bits of PTCM. The secondary modulation of PTCM requires strong coding because the secondary information bit stream is used to decode the primary bit stream. Single errors in this bit stream lead to many other errors, and significant weakening of this coding results in a significant degradation of error probabilities.